#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include "partPrivate.h"

//c文件中定义CLASS2的继承类
typedef struct {
	CLASS2 m;
	int c;
} CLASS3;

//构造函数中，分配CLASS3类型内存，但返回CLASS2指针
CLASS2 *newPartPrivet(void)
{
	CLASS3 *p = malloc(sizeof(CLASS3));
	
	if(p != NULL) {
		return &(p->m);
	} else {
		return NULL;
	}	
}

//析构函数，传入CLASS2指针参数
//反推原结构体地址后释放
void delPartPrivet(CLASS2 *p)
{
	CLASS3 *ptr = NULL;
	if(p != NULL) {
		container_of(p, CLASS3, m);
		free(ptr);
	} 
}
